﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace V2TEK.NET.SH.Silverlight.Charts.Core.Schedule
{
    public enum ConstraintType
    {
        FS,
        SF,
        SS,
        FF,
        None
    }

    public enum LagOrLead
    {
        Lag,
        Lead,
        None
    }

    /// <summary>
    /// 
    /// </summary>
    /// <typeparam name="T">Task的Class类型</typeparam>
    public interface IConstraint<T> where T: ITask
    {
        T Task { get; set; }
        T ForegroundTask { get; set; }
        ConstraintType ConstraintType { get; }
        LagOrLead LagOrLead { get; }
        TimeSpan Range { get; }
    }
}
